/*
** $ 身份：嘞调试.h $
** 调试接口模块中的辅助功能
** 请参见炉啊.h中的版权声明
*/
#ifndef 嘞调试_喝
#define 嘞调试_喝


#include "嘞国.h"

#define 程序计数关系(程序计数, 匹)	(投_整型((程序计数) - (匹)->代码) - 1)

#define 重置钩子计数(嘞)	(嘞->钩子计数 = 嘞->基础钩子计数)

/*
** 标记 '行信息' 数组中具有绝对信息的条目
** '绝对值行信息' 数组
*/

#define 绝对值行信息	(-0x80)

炉啊艾_函 int 炉啊哥_取函数行 (const 原型 *弗, int 程序计数);
炉啊艾_函 const char *炉啊哥_找本地 (炉啊_国 *嘞, 调用信息 *调信, int 恩,
                                                    丝嚏颗身份 *销售点);
炉啊艾_函 嘞_不返 炉啊哥_类型错误 (炉啊_国 *嘞, const 嚏值 *欧,
                                                const char *操作名字);
炉啊艾_函 嘞_不返 炉啊哥_为错误 (炉啊_国 *嘞, const 嚏值 *欧,
                                               const char *什么);
炉啊艾_函 嘞_不返 炉啊哥_连接错误 (炉啊_国 *嘞, const 嚏值 *匹1,
                                                  const 嚏值 *匹2);
炉啊艾_函 嘞_不返 炉啊哥_操作整型错误 (炉啊_国 *嘞, const 嚏值 *匹1,
                                                 const 嚏值 *匹2,
                                                 const char *消息);
炉啊艾_函 嘞_不返 炉啊哥_到整型错误 (炉啊_国 *嘞, const 嚏值 *匹1,
                                                 const 嚏值 *匹2);
炉啊艾_函 嘞_不返 炉啊哥_秩序错误 (炉啊_国 *嘞, const 嚏值 *匹1,
                                                 const 嚏值 *匹2);
炉啊艾_函 嘞_不返 炉啊哥_跑错误 (炉啊_国 *嘞, const char *格式, ...);
炉啊艾_函 const char *炉啊哥_加信息 (炉啊_国 *嘞, const char *消息,
                                                  嚏串 *源, int 行);
炉啊艾_函 嘞_不返 炉啊哥_错误消息 (炉啊_国 *嘞);
炉啊艾_函 int 炉啊哥_跟踪执行 (炉啊_国 *嘞, const 指令 *程序计数);

#endif